Degrees of Transaction Isolation in SQL*Cache: A Predicate-based Client-side Caching System
نویسندگان
چکیده
A caching scheme that uses query predicates to cache data on the client-side in a client-server relational database system was presented in [15]. The client-side cache (henceforth referred to as a SQL*Cache), loads query results dynamically in the course of transaction execution, and formulates a cache description based on the query predicates. SQL*Cache is associative in nature, in that it supports content-based reasoning and local execution of SQL queries on the cached data, thereby attempting to reduce query response times and increase server throughput. Local caching involves cache consistency maintenance and complicates transaction concurrency control | in this paper, we examine serializability questions that arise in such a system. We rst analyze the issues in supporting di erent (0/1/2/3) degrees of isolation that client transactions may specify, and describe algorithms to achieve these isolation levels. Then, we propose new levels of isolation that take into account the distributed nature of transaction execution, in terms of the lag of locally cached data with respect to the server database and discrepancies between local and remote reads. The SQL*Cache scheme is currently being implemented using a main memory database as the client-side cache, and commercial database servers as the backends.
منابع مشابه
Client's Cache Updating Using Idle Time of Clients in Relational Database Management Systems
Although multi-tiered software development is taking the place in database application environments, client-server infrastructure has still been in use for years. Furthermore, both infrastructures still need to be improved in some aspects. One of the important aspects of improvement is caching. This paper addresses the issue of caching in relational database system within client-server structur...
متن کاملImproving the Performance of SQL Join Operation in the Distributed Enterprise Information System by Caching
The enterprise information system (EIS) contains databases and other data sources in multiple data centers. Users query the EIS via clients. The client has a working space in the cloud. Caching data in client space will reduce the total execution time of the query. However, the client space has limited resources to store data. There are two options for caching data at the client space: caching ...
متن کاملCaching over the Entire User-to-Data Path in the Internet
A Web client request traverses four types of Web caches, before the Web server as the origin of the requested document is reached. This client-to-server path is continued to the backend DB server if timely and transaction-consistent data is needed to generate the document. Web caching typically supports access to single Web objects kept ready somewhere in caches up to the server, whereas databa...
متن کاملIntelligent Client-Side Web Caching Scheme Based on Least Recently Used Algorithm and Neuro-Fuzzy System
Web caching is a well-known strategy for improving performance of Web-based system by keeping web objects that are likely to be used in the near future close to the client. Most of the current Web browsers still employ traditional caching policies that are not efficient in web caching. This research proposes a splitting client-side web cache to two caches, short-term cache and long-term cache. ...
متن کاملTheory and Practice of Transactional Method Caching
Nowadays, tiered architectures are widely accepted for constructing large scale information systems. In this context application servers often form the bottleneck for a system’s efficiency. An application server exposes an object oriented interface consisting of set of methods which are accessed by potentially remote clients. The idea of method caching is to store results of read-only method in...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1996